﻿using RDF;

using stepengine = RDF.ifcengine;

#if _WIN64
using int_t = System.Int64;
#else
using int_t = System.Int32;
#endif

namespace DZJIFC.Model
{
    public class IFCInstance: Geometry , IInstance
    {
        private int_t _iID;

        public int_t ID => _iID;
        public Geometry Geometry => this;
        public _matrix4x4 Transformation => null;
        public bool Enabled { get; set; } = false;
        public IUIItem UIItem { get; set; }



        public IFCInstance(int_t iID, int_t iInstance, string strEntity): base(GeometryType.IFC)
        {
            // Geometry
            Instance = iInstance;
            Entity = strEntity;

            // IInstance
            _iID = iID;

            Calculate();
        }

        protected override void SetFormat(int_t iModel)
        {
            base.SetFormat(iModel);

            stepengine.setFilter(iModel, stepengine.flagbit1, stepengine.flagbit1);
        }
    }
}
